package model

import static org.mockito.Mockito.*
import org.junit.Before
import org.junit.Test
import static org.junit.Assert.*


class OrdenDeArrestoTest {
	
	var OrdenDeArresto ordenTest
	var Villano mockVillano = mock(typeof(Villano))
	var Villano otroVillano = mock(typeof(Villano))
	
	@Before
	def void setUp(){
		this.ordenTest = new OrdenDeArresto(this.mockVillano)
		when(this.mockVillano.nombre).thenReturn("Carmen SanDiego")
		when(this.mockVillano.equals(mockVillano)).thenReturn(true)
		when(this.otroVillano.nombre).thenReturn("Igor Igorovich")
		when(this.mockVillano.equals(otroVillano)).thenReturn(false)
	}
	
	@Test
	def concuerdaVillanoConElMismoVillanoTest(){
		assertTrue("Deberia ser verdadero, el villano es el mismo", this.ordenTest.concuerdaConElVillano(this.mockVillano))
	}
	
	@Test
	def concuerdaVillanoConDistintosVillanosTest(){
		assertFalse("Deberia ser falso, los villanos son distintos", this.ordenTest.concuerdaConElVillano((this.otroVillano)))
	}
}